/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package propres;
import java.util.*;
/**
 *
 * @author Administrador
 */
public class CtrlVistaPagos {
private CtrlDominioPagos driver;   
// El controlador de vista gestiona los datos que entran y salen de las vistas
// No tiene atributos
    
    
// Métodos:

public CtrlVistaPagos(CtrlVistaCliente CVC){
    try{
        
    driver=new CtrlDominioPagos(CVC.Get_Ctrl());
    }
    catch(Exception e ){System.out.println(e.getMessage());}
}
    
public String gestion_evento(String Y,String[] D,String com,List<Date> ldates, List<String> lcomidas)throws Exception{

    String error="ok";
    int c_error=0;
    
    if(Y.equals("Pagar todo")){
   
    error=driver.Pagar_Todos(D[0],ldates,lcomidas);
    }
    else if(Y.equals("Pagar comida")){
     error=driver.Pagar_comida(D,com);
        
    }
    else if(Y.equals("Pagar dia")){
    
     error=driver.Pagar_dia(D,ldates,lcomidas);
         
    }
    else if(Y.equals("Pagar fechas")){

    error=driver.Pagar_dias(D,ldates,lcomidas);
    }    
    else if(Y.equals("Pagar comida dias")){
        error=driver.pagar_comida_fechas(D, com,ldates);

    }
    return error;
}
public List gestion_consulta(String Y,String[] D,String com)throws Exception{
    List lista=null;
    int c_error=0;
    
if(Y.equals("Consultar todos")){
    
   lista=driver.Consultar_todos(D[0]);
   
    }
    else if(Y.equals("Consultar dias")){
    
    lista=driver.Consultar_dias(D);
            
    }
    else if(Y.equals("Consultar dia")){

   lista=driver.Consultar_dia(D);
    }
    if(lista.size()==0)error_pagos(-9);
    
    
return lista;    
}
    public void error_pagos(int e)
    {
        if(e==-1){}//lanzar excepcion de DNI
        else if(e==-2)
        {
            System.out.println("Introduzca una fecha valida en f1");
            
        }
        else if(e==-3)
        {
            System.out.println("Introduzca una fecha valida en f2");
        }
        else if(e==-4)
        {
            System.out.println("No existen dias en la dieta");
        }
        else if(e==-5)
        {
            System.out.println("No existia la comida indicada ese fecha");
        }
        else if(e==-6)
        {
            System.out.println("No existe el dia indicado");
        }
        else if(e==-7)
        {
            System.out.println("No existen dias en el intervalo indicado");
        }
        else if(e==-8)
        {
            System.out.println("No existen las comidas indicadas en el intervalo");
        }
        else if(e==-9)
        {
            System.out.println("No existen comidas sin pagar");
        }
    }
    
    public boolean isNumeric(String s)
    {
        boolean b=true;
        int i=0;
        
        while(i<s.length()&&b){
            if(s.charAt(i) < '0' || s.charAt(i)> '9' ){
                b=false;
            }
            i++;
        }
        return b;
}
}